Systems and methods for optimizing wearable item selection in electronic clothing transactions platform

ABSTRACT

Disclosed are methods, systems, and non-transitory computer-readable medium for assigning wearable items in a subscription electronics transactions platform. For example, a method may include: generating a grid based on information regarding historically shipped wearable items, wherein the grid comprises at least a first cell and a second cell; determining an average percentage indicating how many wearable items have been used and an average predictive wearability metric for wearable items indicative of a propensity of a user to use the wearable items per number of wearable items shipped for each cell; generating a mapping configured to convert a predictive wearability metric to a squashed predictive wearability metric; and converting a first predictive wearability metric to a first squashed wearability metric based on the generated mapping.

TECHNICAL FIELD

Various embodiments of the present disclosure generally relate tosystems and methods for optimizing wearable item selection in electronicclothing subscription platform, and more particularly, optimizingwearable item selection based on user satisfaction.

BACKGROUND

It is a challenge for rental clothing subscription services to optimizethe selection and delivery of clothing in a way that maximizes both usersatisfaction and business objectives. In particular, it can be difficultto determine optimization objectives of wearable item selection that arealigned with multiple types of business objectives. Some systems andmethods for wearable item selection optimize wearable item selectionbased on users who have had positive and high wearability experiences(e.g., instances in which the users have used the selected wearableitems) because wearability prediction for such users to wearhigh-quality garments may be relatively higher compared to other users.Therefore, it may in the best interest for such systems and methods tooptimize wearable item selection such that high-quality garments areshipped to relatively satisfied users in order to maximize overallwearability. This may allow relatively satisfied users to remainsatisfied, but may similarly cause relatively dissatisfied users toremain relatively dissatisfied. Accordingly, there is a need for animproved method of optimizing wearable item selection in electronicclothing subscription platforms.

The background description provided herein is for the purpose ofgenerally presenting the context of the disclosure. Unless otherwiseindicated herein, the materials described in this section are not priorart to the claims in this application and are not admitted to be priorart, or suggestions of the prior art, by inclusion in this section.

SUMMARY OF THE DISCLOSURE

According to certain aspects of the disclosure, systems and methods aredisclosed for wearable item selection optimization in clothingsubscription services based on user satisfaction to overcome theproblems with conventional methods noted above.

In one embodiment, a computer-implemented method for assigning wearableitems in a subscription electronics transactions platform comprises:generating, by one or more processors, a grid based on informationregarding historically shipped wearable items, wherein the gridcomprises at least a first cell and a second cell, wherein each cellincludes a portion of the information regarding historically shippedwearable items corresponding to: (i) a category of percentagesindicating how many wearable items have been used per number of wearableitems shipped, and (ii) a category of predictive wearability metrics forwearable items indicative of a propensity of a user to use the wearableitems; determining, by the one or more processors, an average percentageindicating how many wearable items have been used per number of wearableitems shipped for each cell; determining, by the one or more processors,an average predictive wearability metric for wearable items indicativeof a propensity of a user to use the wearable items for each cell;generating, by the one or more processors, a mapping configured toconvert a predictive wearability metric to a squashed predictivewearability metric at least based on the average percentage and theaverage predictive wearability metric for each cell, wherein generatingthe mapping comprises determining a first difference metric indicating adifference in average percentage per difference in average predictivewearability metric between the first cell and the second cell, andwherein the generated mapping includes the first difference metric andthe average percentage and wearability metric for the first cell;obtaining, by the one or more processors, information regarding a firstpairing including a first unique user identifier and a first wearableitem, wherein the information comprises: (i) a first predictivewearability metric associated with the first unique user identifier andthe first wearable item, and (ii) a first percentage indicating how manywearable items have been used by the first user per number of wearableitems shipped to the first user; determining, by the one or moreprocessors, that the first predictive wearability metric falls under thecategory of predictive wearability metrics for wearable items for thefirst cell; determining, by the one or more processors, that the firstpercentage falls under the category of percentages indicating how manywearable items have been used per number of wearable items shipped forthe first cell; converting, by the one or more processors, the firstpredictive wearability metric to a first squashed wearability metricbased on the generated mapping; and determining, by the one or moreprocessors, whether to assign the first wearable item to the firstunique user identifier based on the first squashed wearability metricand/or the first predictive wearability metric.

In another embodiment, a computer system comprises: a data storagedevice storing processor-readable instructions; and a processorconfigured to execute the instructions to perform a method. The methodmay include: generating a grid based on information regardinghistorically shipped wearable items, wherein the grid comprises at leasta first cell and a second cell, wherein each cell includes a portion ofthe information regarding historically shipped wearable itemscorresponding to: (i) a category of percentages indicating how manywearable items have been used per number of wearable items shipped, and(ii) a category of predictive wearability metrics for wearable itemsindicative of a propensity of a user to use the wearable items;determining an average percentage indicating how many wearable itemshave been used per number of wearable items shipped for each cell;determining an average predictive wearability metric for wearable itemsindicative of a propensity of a user to use the wearable items for eachcell; generating a mapping configured to convert a predictivewearability metric to a squashed predictive wearability metric at leastbased on the average percentage and the average predictive wearabilitymetric for each cell, wherein generating the mapping comprisesdetermining a first difference metric indicating a difference in averagepercentage per difference in average predictive wearability metricbetween the first cell and the second cell, and wherein the generatedmapping includes the first difference metric and the average percentageand wearability metric for the first cell; obtaining informationregarding a first pairing including a first unique user identifier and afirst wearable item, wherein the information comprises: (i) a firstpredictive wearability metric associated with the first unique useridentifier and the first wearable item, and (ii) a first percentageindicating how many wearable items have been used by the first user pernumber of wearable items shipped to the first user; determining that thefirst predictive wearability metric falls under the category ofpredictive wearability metrics for wearable items for the first cell;determining that the first percentage falls under the category ofpercentages indicating how many wearable items have been used per numberof wearable items shipped for the first cell; converting the firstpredictive wearability metric to a first squashed wearability metricbased on the generated mapping; and determining whether to assign thefirst wearable item to the first unique user identifier based on thefirst squashed wearability metric and/or the first predictivewearability metric.

In another embodiment, there is provided a non-transitorycomputer-readable medium containing instructions that, when executed bya processor, cause the processor to perform a method. The method mayinclude: generating a grid based on information regarding historicallyshipped wearable items, wherein the grid comprises at least a first celland a second cell, wherein each cell includes a portion of theinformation regarding historically shipped wearable items correspondingto: (i) a category of percentages indicating how many wearable itemshave been used per number of wearable items shipped, and (ii) a categoryof predictive wearability metrics for wearable items indicative of apropensity of a user to use the wearable items; determining an averagepercentage indicating how many wearable items have been used per numberof wearable items shipped for each cell; determining an averagepredictive wearability metric for wearable items indicative of apropensity of a user to use the wearable items for each cell; generatinga mapping configured to convert a predictive wearability metric to asquashed predictive wearability metric at least based on the averagepercentage and the average predictive wearability metric for each cell,wherein generating the mapping comprises determining a first differencemetric indicating a difference in average percentage per difference inaverage predictive wearability metric between the first cell and thesecond cell, and wherein the generated mapping includes the firstdifference metric and the average percentage and wearability metric forthe first cell; obtaining information regarding a first pairingincluding a first unique user identifier and a first wearable item,wherein the information comprises: (i) a first predictive wearabilitymetric associated with the first unique user identifier and the firstwearable item, and (ii) a first percentage indicating how many wearableitems have been used by the first user per number of wearable itemsshipped to the first user; determining that the first predictivewearability metric falls under the category of predictive wearabilitymetrics for wearable items for the first cell; determining that thefirst percentage falls under the category of percentages indicating howmany wearable items have been used per number of wearable items shippedfor the first cell; converting the first predictive wearability metricto a first squashed wearability metric based on the generated mapping;and determining whether to assign the first wearable item to the firstunique user identifier based on the first squashed wearability metricand/or the first predictive wearability metric.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate various exemplary embodiments andtogether with the description, serve to explain the principles of thedisclosed embodiments.

FIG. 1 depicts an example environment in which methods, systems, andother aspects of the present disclosure may be implemented.

FIG. 2 depicts a block diagram schematically showing a systemarchitecture and data flow in an exemplary implementation of thewearability modeling and matching system, according to one or moreembodiments.

FIG. 3 depicts an exemplary method of wearability modeling and matching,according to one or more embodiments.

FIG. 4 depicts an exemplary method of wearability modeling and matching,according to one or more embodiments.

FIG. 5 depicts an exemplary method of optimizing wearable item selectionin electronic clothing subscription platform, according to exemplaryembodiments of the present disclosure.

FIG. 6 depicts an exemplary method of optimizing wearable item selectionin electronic clothing subscription platform, according to exemplaryembodiments of the present disclosure.

FIG. 7 depicts an exemplary computer device or system, in whichembodiments of the present disclosure, or portions thereof, may beimplemented.

DETAILED DESCRIPTION OF EMBODIMENTS

Reference will now be made in detail to the exemplary embodiments of thedisclosure, examples of which are illustrated in the accompanyingdrawings. Wherever possible, the same reference numbers will be usedthroughout the drawings to refer to the same or like parts.

In a rental clothing subscription service, a user may pick a wearableitem the user may want to try on from a group of online collectionsprovided by the rental clothing subscription service. The rentalclothing subscription service may select and ship the selected wearableitem to the user. In some embodiments, the process of service selectionmay be formalized as mathematical optimization in which user-garmentworn may be maximized through a deep learning approach that may model(also referred to as a “wearability model”) user experiences of wearinggarments, compute the probability for a user to wear a garment(hereinafter referred to as “wearability”) and maximize wearability inservice selection. For example, various embodiments of determining suchwearability metrics of wearable items are disclosed, for example, inU.S. patent application Ser. No. 16/275,989, filed Feb. 14, 2019,entitled “Systems and Methods for Automatic Apparel Wearability ModelTraining and Prediction,” which is incorporated herein by reference inits entirety.

In some embodiments, a wearability model may be a general model that maytake users' historical experience in addition to wearable item qualityas inputs to predict the probability for matching a user and wearableitem pair (e.g., a unique user identifier (UUID) and stockkeeping unit(SKU) pair). In some embodiments, the wearability model may predict highwearability scores for relatively satisfied users and predict low scoresfor relatively dissatisfied users. In some embodiments, a matchingengine may receive such predicted wearability scores as inputs anddetermine allocation plans that may maximize the predicted wearabilityscores. For example, the matching engine may allocate relatively betterwearable items (e.g., wearable items of relatively higher quality suchas better fabric, better feedback, etc.) to relatively satisfied user,while sending relatively less better matched wearable items torelatively dissatisfied users. As noted above, this may allow relativelysatisfied users to remain satisfied, but may similarly cause relativelydissatisfied users to remain dissatisfied.

As such, conventional modeling and learning approaches in wearable itemselection optimization may be biased towards users and garments thathave more historical and experience data than others. In this context,when the rental clothing subscription service has to make differentselection decisions in order to fulfill all current user selections withlimited inventory, maximization for wearability may be biased towardsselection of high wearable garments to be shipped to users who have hadexperiences of high wearability, leaving out users who have had lessdesirable experiences due to low wearability.

In the presence of inventory limit and demand growth, it can beimportant for the rental clothing subscription services to satisfy asmany users as possible. Accordingly, the current disclosure addressesthe bias in wearable item selection by optimizing based not only overallwearability but also individual user satisfaction.

The current disclosure describes embodiments directed to a frameworkthat may allow “squashing” in addition to maximizing wearability inoptimization objectives for wearable item selection. In someembodiments, the squashing approach may segment users based on theirpast and current states of service satisfaction, compute usersensitivities to wearable item wearability, and transform wearabilityinto squashed wearability that may measures user satisfaction withreference to a wearable item selection. Accordingly, the process of suchwearable item selection may be formalized as mathematical optimizationdirected to maximizing squashed wearability, i.e., user satisfaction. Inthe context of the current disclosure, squashing may be referred to as aprocess of transforming a wearability score to an estimated satisfactionlevel, as will be described in further detail below. In someembodiments, the transformation may be based on how sensitive a user'ssatisfaction level is to the wearability score. The transformation maybe different for different user segments, and user segments may be basedon users' historical percentage worn. In the context of the currentdisclosure, historical percentage worn may refer to the ratio of wornwearable items per shipped wearable items to users. A user'ssatisfaction level may be estimated based on the percentage wornreflected by the user segment. For example, a relatively satisfied userwith a user-level percentage worn of 80% or higher may be less pickywith respect to selected wearable items and/or the user's body shape maybe easier to be fit. Accordingly, the relatively satisfied user may bemore likely to wear most shipped garments even when the wearabilityscore associated with the shipped garments and the user is not ideal. Insuch instances, score squashing may allow for a matching engine toallocate desirable wearable items that may be in the relativelysatisfied user's closet and users who are relatively sensitive towearability scores. In the context of the current disclosure, a squashedscore may be referred to as a probability that a user may wear a garmentof a certain wearability score.

In the current disclosure, embodiments described herein may be directedto determining and implementing the transformation for score squashing.In some embodiments, squashed wearability scores may be utilized by amatching engine to maximize the overall user satisfaction across theelectronic clothing subscription platform, as will be described infurther detail below. As score squashing may be based on the sensitivityof a user's satisfaction to a wearability score, wearable item selectionbased on squashed scores may increase the overall satisfaction of usersof the rental clothing subscription services, and result in higherconversion and retention of subscribers.

The following embodiments describe systems and methods for executingneural network training in order to dynamically predict apparelwearability and maximizing user satisfaction. As noted above, thereexists a need for service providers (e.g., subscription-based serviceproviders) to increase the likelihood of actual use and satisfaction ofthe service by its users, and to achieve such an increase of likelihoodfor as many users as possible despite their differences in individualtastes or preferences. A service platform with such an objective mayinclude, for example an electronic platform that enable users tosubscribe to, purchase, or rent apparel, operating under keyconsiderations such as, for example, determining whether each subscriberactually wears the rented apparel in a particular rental cycle. Thevalue of the service may improve greatly if the provider intelligentlyallocates or recommends apparel with higher probabilities of being wornby the user.

While the exemplary system architecture as described in the presentdisclosure relates to an electronic transactions for subscribing to,purchasing, or renting apparel (e.g., clothing-as-a-service (CaaS) orTry-Then-Buy (TTB) service), implementations disclosed herein mayeffectively serve any other subscription, product purchase, or onlinetransaction service such as, for example, subscribing to or makingpurchases in a software service, cleaning service, delivery service,maintenance service, rental product, rental vehicles, etc., withoutdeparting from the scope of the disclosure. For example, thecharacteristic of being wearable or having a measure of high wearability(e.g., having propensity to wear apparel) and/or user satisfaction maycorrespond to a characteristic of being usable in contexts outside ofapparel (e.g., having propensity to use a subscribed rental product orservice).

In accordance with the present disclosure, allocating or recommendingapparel and/or a virtual closet of apparel with a higher percentage ofuser satisfaction by the subscriber may be achieved by uniquelyconfigured machine learning and predictive modeling. Given the vastamount of data attributes that may be collected from historicaltransactions, data sets indicative of each user's relationship withcertain apparel (e.g., a binary flag of whether a shipped garment wasactually worn by a user) may be formed and/or retrieved. Additionally, acomputing system may transform such data sets to a training data set,and run neural network model training using the training data set.Within this process, specifically customized training of neuralnetworks, combined with their practical application of constantlypredicting wearability metrics and providing a user with highly wearableapparel, produces unconventional and unique automations whichnecessarily achieve technological improvements through the particularautomation processes described more in detail below. Consequently, theunconventional and unique aspects of these automation processesrepresent a sharp contrast to merely providing a well-known or routineenvironment for performing a manual or mental task.

The subject matter of the present description will now be described morefully hereinafter with reference to the accompanying drawings, whichform a part thereof, and which show, by way of illustration, specificexemplary embodiments. An embodiment or implementation described hereinas “exemplary” is not to be construed as preferred or advantageous, forexample, over other embodiments or implementations; rather, it isintended to reflect or indicate that the embodiment(s) is/are “example”embodiment(s). Subject matter can be embodied in a variety of differentforms and, therefore, covered or claimed subject matter is intended tobe construed as not being limited to any exemplary embodiments set forthherein; exemplary embodiments are provided merely to be illustrative.Likewise, a reasonably broad scope for claimed or covered subject matteris intended. Among other things, for example, subject matter may beembodied as methods, devices, components, or systems. Accordingly,embodiments may, for example, take the form of hardware, software,firmware, or any combination thereof (other than software per se). Thefollowing detailed description is, therefore, not intended to be takenin a limiting sense.

Throughout the specification and claims, terms may have nuanced meaningssuggested or implied in context beyond an explicitly stated meaning.Likewise, the phrase “in one embodiment” as used herein does notnecessarily refer to the same embodiment and the phrase “in anotherembodiment” as used herein does not necessarily refer to a differentembodiment. It is intended, for example, that claimed subject matterinclude combinations of exemplary embodiments in whole or in part.

The terminology used below may be interpreted in its broadest reasonablemanner, even though it is being used in conjunction with a detaileddescription of certain specific examples of the present disclosure.Indeed, certain terms may even be emphasized below; however, anyterminology intended to be interpreted in any restricted manner will beovertly and specifically defined as such in this Detailed Descriptionsection. Both the foregoing general description and the followingdetailed description are exemplary and explanatory only and are notrestrictive of the features, as claimed.

As used in the present disclosure, the term “CaaS” (i.e.,clothing-as-a-service) may collectively refer to computer-implementedservices and functions associated with subscription, purchase, and/orrental services for users (e.g., periodic subscription for receivingapparel, apparel rental or purchase order, distribution, returnprocessing, TTB services, account management, marketing, customerservice, warehouse operations, etc.). As used in the present disclosure,the term “apparel” may refer to any article of clothing, apparel,jewelry, hat, accessories, or other product which may be worn by a user.In the context of the current disclosure, the term “apparel” may be usedinterchangeably with “garment” and “wearable item.”

As used in the present disclosure, the term “wearability” may refer to apropensity or a probability of a user actually wearing a given garment,and the term “wearability metric” may be a metric indicating a level ofwearability. As used in the present disclosure, “score squashing” may bereferred to as a process of transforming a wearability metric to anestimated user satisfaction level. Accordingly, the term “squashedmetric” may be referring a squashed wearability metric, i.e., atransformed wearability metric indicating an estimated user satisfactionlevel and/or an estimated value to a user. In the context of the currentdisclosure, a wearability metric that has not been squashed may bereferred to as a “raw wearability metric.” As used in the presentdisclosure, the term “closeting” or “to closet” may refer to acomputer-implemented operation of placing one or more garments into avirtual closet (e.g., a cart, a repository, or any type of space whichmay be virtually associated with a particular set of one or moregarments for a future transaction). Additionally, “matching” may referto a computer-implemented operation of determining a set of one or morematching garments and/or determining wearability metrics for givengarments, and “allocating” may refer to a computer-implemented operationof determining the garments that should be assigned and shipped to oneor more particular users. In the context of the current disclosure, auser-garment pair may be referred to as a pairing of a unique useridentifier (UUID) and a garment identifier, e.g., a stockkeeping unit(SKU).

In this disclosure, the term “based on” means “based at least in parton.” The singular forms “a,” “an,” and “the” include plural referentsunless the context dictates otherwise. The term “exemplary” is used inthe sense of “example” rather than “ideal.” The term “or” is meant to beinclusive and means either, any, several, or all of the listed items.The terms “comprises,” “comprising,” “includes,” “including,” or othervariations thereof, are intended to cover a non-exclusive inclusion suchthat a process, method, or product that comprises a list of elementsdoes not necessarily include only those elements, but may include otherelements not expressly listed or inherent to such a process, method,article, or apparatus. Relative terms, such as, “substantially” and“generally,” are used to indicate a possible variation of ±10% of astated or understood value.

Referring now to the appended drawings, FIG. 1 shows an exampleenvironment 100, according to one or more embodiments of the presentdisclosure. As shown, the example environment 100 may include one ormore user devices 110, a network 112, product online transactionprocessing (product OLTP) component 114, a publisher 136, warehousemanagement system (WMS) 138, and wearability modeling and matchingsystem 140.

Users of the example environment 100 may use one or more user devices110 (e.g., a computing device, a mobile device, or the like) to accessand/or apply the results generated from the wearability modeling andmatching system 140. The one or more user devices may be incommunication with the product OLTP component 114, the WMS 138, and/orother user devices among the user devices 110, using a network 112.Further, the user devices 110 may allow a user to display a web browser,an application, or any other user interface for accessing informationgenerated by product OLTP component 114, warehouse management system138, and/or other user devices among the user devices 110. For example,a device among the one or more of the user devices 110 may load anapplication with graphical user interface (GUI), and the application maydisplay on the GUI one or more apparel recommendations for closeting bythe user.

The wearability modeling and matching system 140 may provide users withvarious features necessarily providing technical improvements overplatforms which merely provide users with selection choices withoutwearability analysis functions. In some implementations, the wearabilitymodeling and matching system 140, along with product OLTP component 114and/or WMS 138, may provide a user with computer-implemented user-facingrecommendations of apparel. These computer-implemented recommendations,for example, may uniquely take into account (i) which apparel(s) theparticular user is likely to wear, (ii) apparel(s) similar to otherapparel(s) which the particular user is likely to wear, (iii) apparel(s)with high wearability to other users who are similar to the particularuser, (iv) apparel(s) with high wearability to other users who have hadsimilar experiences with the particular user, and/or (v) usersatisfaction with apparel(s) previously shipped to the user. In makingsuch recommendations to the user interface, the wearability modeling andmatching system 140, along with product OLTP component 114 and/or WMS138, may use wearability metrics (e.g., raw wearability metrics and/orsquashed metrics) as key considerations.

Additionally, or alternatively, the wearability modeling and matchingsystem 140, along with product OLTP component 114 and/or WMS 138, mayuse wearability metrics (e.g., raw wearability metrics and/or squashedmetrics) as key considerations for one or more closet curation features.For example, the environment 100 may assist user devices 110 (e.g., byproviding recommendations for notifications) at purging or replacingapparel with low wearability and/or low user satisfaction based on oneor more reasons such as size, seasonality, styles, fabric, and/or otheradvanced attributes. In these implementations, the wearability modelingand matching system 140, along with product OLTP component 114 and/orWMS 138, may select apparel with low wearability metrics (e.g., low rawwearability metrics and/or low squashed metrics as described in detailbelow) below a preset threshold value.

The product OLTP component 114 may be one or more computer-implementeddata processing and storage systems configured to process onlinetransactions from user devices 110. The product OLTP component 114 mayprocess, for example, order entries, sales transactions, returnprocessing, replenishment support/processing, and financialtransactions. Further, the product OLTP component 114 may be incommunication with at least the replenishment system 122, the publisher136, and matching setup engine 126 with message bus or channels toexchange data with other connected systems. The publisher 136 may, forexample, receive information from the product OLTP component 114 andcommunicate the received information to the WMS 138. The product OLTPcomponent 114 may include, or be connected to, one or more databaseswith tables or any other data structures included therein. The one ormore databases included in or connected to the product OLTP component114 may be configured to receive and respond to queries for dataassociated with transactions. Additionally, or alternatively, the one ormore databases in the product OLTP component 114 may be configured totransmit data at regularly scheduled intervals, transmit data via anasynchronous scheduling, and/or respond to authorized requestsassociated with reading, writing, and/or retrieving the data storedtherein.

The wearability modeling and matching system 140 may provide anarchitecture for a plurality of sub-processes associated with predictivemodeling and wearability matching/allocations, including generatinganalytics, wearability training, wearability prediction, and wearabilitymatching. As supporting architecture for the sub-processes, thewearability modeling and matching system 140 may comprise variouscomponents, such as a BI (business intelligence) component 116, awearability setup subsystem 118, a metrics database 120, a replenishmentsystem 122, a match database 134, RID information repository 124, amatching setup engine 126, a match setup file repository 128, a matchingengine 130, a match result file repository 132.

The BI component 116 may store and/or provide historical informationstored in a data warehouse, as well as new data gathered from othersource systems as they are generated, such as, for example, bothhistorical analytics and real-time predictions. For example, the datastored and output by BI component 116 may comprise raw attributes from adata warehouse, historical shipping and RN (return notification) data,and historical closet data, as well as dynamic data feed from activecloset, as described in more detail below. BI component 116 may serve asthe sole source of data feed for wearability setup subsystem 118.Additionally, or alternatively, the wearability setup subsystem 118 maybe in communication with, and receive data, from product OLTP component114.

The wearability setup subsystem 118 may be in communication with BIcomponent 116 and/or the product OLTP component 114, and may comprise aplurality of modules which perform wearability data preparation,wearability training, and wearability prediction. The individual moduleswhich may perform these functions are described in detail below. Thewearability setup subsystem 118 may receive input data from BI component116, which may comprise, for example, raw attributes, historicalshipping and return notification data, historical closet data, andactive closet data. The receiving or streaming or input data from BIcomponent 116 may run periodically, asynchronously, or via push and/orpull operations.

The wearability setup subsystem 118 may be in communication with ametrics database 120. The metrics database 120 may comprise datamanagement components and/or databases such as, for example,Elasticsearch, Hbase, or any other data search/storage componentscapable of indexing, retrieving, and/or searching documents, orfunctioning as key-value-pair stores. The wearability setup subsystem118 may transmit output data to the metrics database 120. The outputdata may be, for example, one or more predictive wearability metricsindicative of propensity to wear one or more garments. One or morepredictive wearability metrics may, for example, be associated with auser and apparel pair. In some embodiments, the wearability setupsubsystem 118 may transform such predictive wearability metrics intosquashed wearability metrics which may indicate a predicted usersatisfaction level with respect to the apparel included in the user andapparel pair. The specific functions by which the wearability setupsubsystem 118 produces the output data based on the input data isdescribed in further detail below.

The replenishment system 122 may be in communication with the productOLTP component 114, and may receive input data from the product OLTPcomponent 114 periodically, asynchronously, or via push and/or pulloperations (e.g., dynamic feed into the replenishment system 122). Theinput data may be, for example, return notification (RN) attributes of auser's RN, as well as any other data attributes associated with RNattributes. Based on the input data, the replenishment system 122 maygenerate replenishment identifiers (RIDs) for a user, along with anyother data attributes associated with each RID. An RID may be, forexample, an identifier generated by the replenishment system 122 inresponse to a user's RN and/or a detection that a user has an open slotand is eligible for next box and shipping. Additionally, oralternatively, the wearability setup subsystem 118 may generate RIDs ina wearability setup training module 204, as described in further detailbelow. The replenishment system 122 may transmit RIDs, along with anyother data attributes associated with each RID, to a match database 134.

The match database 134 may be in communication with the replenishmentsystem 122. The match database 134 may comprise one or moresubcomponents such as, for example, RID information repository 124, amatch setup file repository 128, and a match result file repository 132.The match database 134 may receive the RIDs (e.g., along with any otherdata attributes associated with each RID) and store the received data toRID information repository 124.

The matching setup engine 126 may be in communication with the metricsdatabase 120, the match database 134, the RID information repository124, match result file repository 132, and the product OLTP component114. The matching setup engine 126 may be run in cycles, such as inperiodic cycles (e.g., every hour), asynchronously, or via push and/orpull operations based on events such as generation of an RID. At eachcycle, the matching setup engine 126 may receive one or more RIDsdynamically generated at the RID information repository 124.Additionally, or alternatively, the matching setup engine 126 mayreceive generated RIDs from the metrics database 120. For the receivedRIDs, the matching setup engine 126 may retrieve all data attributes ormetadata related to those RIDs, such as unique user identifiers (e.g.,UUIDs), unique apparel identifiers (e.g., SKU information), and/or anyother data attributes associated with the unique user identifiers and/orapparel identifiers, from product OLTP component 114. In someimplementations, the matching setup engine 126 may also receive dataattributes associated with active closets or closeted apparel, from theproduct OLTP component 114, in order to generate match pairs based onactive closet data.

The matching setup engine 126 may then dynamically generate match userand apparel pairs. In some embodiments, each match user and apparel pairmay include a unique user identifier (e.g., UUID) and a unique apparelidentifier (e.g., SKU) retrieved from the product OLTP component 114.The matching setup engine 126 may then retrieve a wearability metricassociated with each match user and apparel pair from the metricsdatabase 120, from the predictive wearability metrics stored at themetrics database 120. For example, for each match user and apparel pair(e.g., UUID-SKU), the matching setup engine 126 may make an onlinerequest to the metrics database 120, to retrieve a predictivewearability metric which may be associated with the match user andapparel pair (e.g., UUID-SKU), and store the retrieved predictivewearability metric as the match wearability metric for the match userand apparel pair, at the match setup file repository 128 in the matchdatabase 134.

In some implementations, the matching setup engine 126 may perform itsfunctions in separate and independent cycles from the functionsperformed by wearability setup subsystem 118. For example, thewearability setup subsystem 118 may perform its functions of preparingand building wearability model, processing prediction data, andgenerating predictive wearability metrics offline (e.g., as back-endoperation cycles which may be performed at different and independentschedules in comparison to the operation cycles performed by thematching setup engine 126) and store the output data in the metrics forad hoc online retrievals by the matching setup engine 126. Such animplementation may achieve reduced online execution times of producingwearability metrics, in comparison to implementation in whichwearability setup subsystem 118 and matching setup engine 126 performoperations together at each online request or each cycle iteration. Theimplementation of offline computations by wearability setup subsystem118 (e.g., computations performed independently from online activitiesof the matching setup engine 126) may result in latency of data requiredat the matching setup engine 126, such as missing match pairs. To remedysuch latency, if there exists a missing predictive wearability metricsfor match pairs at matching setup engine 126, the matching setup engine126 may generate an alert and/or fill the missing data with a defaultvalue (e.g., a neutral value such as 50%, or any other preset defaultvalue).

Alternatively, the wearability setup subsystem 118 and the matchingsetup engine 126 perform operations together in each cycle iteration,such that predictive wearability metrics are generated online forimmediate use by the matching setup engine 126 (e.g., without anylatency caused by independently performed storage operations, or withouta need for the metrics database 120). Such implementation of onlinemetrics computation may eliminate latency of data between thewearability setup subsystem 118 and the matching setup engine 126, andalso enable the online retrieval services to be used by other subsystems(e.g., subsystems within the environment 100, and/or subsystems incommunication with the environment 100). This implementation may resultin higher online execution times of producing wearability metrics, incomparison to the offline computation implementation described above.

The matching engine 130 may be in communication with the match setupfile repository 128 and the match result file repository 132. Thematching engine 130 may run in cycles, such as in periodic cycles (e.g.,every hour), asynchronously, or via push and/or pull operations. Thematching engine 130 may run in the same, synchronous cycles as thematching setup engine 126. At every cycle, the matching engine 130 mayreceive input data from the match setup file repository 128, such as thestored match wearability metrics for one or more match pairs. Based onthe received data, the matching engine may generate, for example, tworesult files for each match pair. A first result file may have thewearability metrics associated with the match pair, such as, forexample, raw wearability metric(s) and squashed wearability metric(s).In some embodiments, the first result file may further include anexpected wearability probability, average wearability rate, prioritysuccess rate, missing keys at match-setup time, and number ofmatches-in-picking without computed metrics. A second result file mayhave cost-function results for the matching optimization which may becalculated by, for example, first calculating an adjusted score asadjusted score=I(is_prioritized)*x*match wearability metric, and thencalculating the cost for matching allocation as x-adjusted score. Theresult files may be then stored at the match result file repository 132.

The match result file repository 132 may be in communication with thematching engine 130 and the publisher 136. The publisher 136 may be incommunication with WMS 138. Both the publisher 136 and WMS 138 may be incommunication with the user devices 110 via the network 112. Thepublisher 136 may retrieve data attributes from the result files storedin the match result file repository 132, and output data from the resultfile (e.g., wearability metrics, average wearability rate, prioritysuccess rate, missing keys at match-setup time, and number ofmatches-in-picking without computed metrics) in a specifically preset ordefault publishing format. The output of the publisher 136, for example,may be retrieved directly by the user devices 110, or by the WMS 138.The WMS 138 may be connected to the user devices 110 via the network112. The WMS 138 may perform functions of, for example, storing and/ortransmitting warehouse management data attributes derived or generatedbased on the output of the publisher 136.

The number and arrangement of devices, networks, and components shown inFIG. 1 are provided as an example. In practice, there may be additionaldevices and/or components, fewer devices and/or components, differentdevices and/or components, or differently arranged devices and/orcomponents than those shown in FIG. 1. Furthermore, two or more devicesor components shown in FIG. 1 may be implemented within a single device,or a single device shown in FIG. 1 may be implemented as multiple,distributed devices. Additionally, or alternatively, a device orcomponent of environment 100 may perform one or more functions describedas being performed by another device or component of environment 100.

FIG. 2 depicts a block diagram schematically showing a systemarchitecture and data flow in an exemplary environment 200 of thewearability modeling and matching system, according to one or moreembodiments. The exemplary environment 200 may have two processes whichrun respectively in two computing environments, such as a model trainingenvironment 201 and a matching environment 203. The model trainingenvironment 201 may be implemented using, for example, SQL and/orPython. It is understood that any appropriate language may be utilizedto implement the model training environment 201 in alternativeembodiments. The matching environment 203 may be implemented using, forexample, Java or any other programming language capable of conditionalmatching algorithms. As described above with respect to FIG. 1, themodel training environment 201 may host an offline process of predictivewearability metrics computations, which may not need to run in real-timeto any operation of the matching environment 203, or be executed onlinetogether with any online process of the matching environment 203.Alternatively, the model training environment 201 and the matchingenvironment 203 may both run online (e.g., both running a cycle in eachonline process), such that predictive wearability metrics are generatedonline for immediate use without any data latency.

The model training environment 201 may comprise a wearability setupsubsystem 205, which may execute a plurality of different modules (e.g.,a wearability setup training module 204, a wearability squashing setupmodule 208, and a wearability setup prediction module 212). Thesemodules may be software instructions executed by one or more processorsassociated with the wearability setup subsystem 205. In someimplementations, the wearability setup subsystem 205 may correspond tothe wearability setup subsystem 118 of FIG. 1.

The wearability setup subsystem 205 may receive various data attributesin order to build a training data set for neural network training, andto generate prediction data such as, e.g., predictive wearabilitymetrics (e.g., raw wearability metrics and/or squashed wearabilitymetrics) associated with user-garment pairs. The data attributesreceived may include raw attributes 202 a, historical shipping and RNs202 b, historical closet data 202 c, and active closet data 202 d, andthe data attributes may be received from the BI component 116 and/orproduct OLTP component 114, as described above with reference to FIG. 1.

The wearability setup training module 204 may prepare and processmodeling data, which may be needed for the machine learning process ofmodels that produce predictive wearability metrics. First, in inputdata, such as raw attributes 202 a, historical shipping and RNs 202 b,and historical closet data 202 c, may be received from BI component 116and/or product OLTP component 114. In some embodiments, the historicalshipping and RNs 202 b may include associated percentage worn responsesfrom the users. For example, a RN may include a user-garment pair and aresponse from the user indicating whether the user had used the garment.In some embodiments, the response from the user may indicate how manytimes the user had used the garment. In some implementations, the rawattributes 202 a may be gathered and placed into advanced analyticstables.

Based on the advanced analytics tables, raw attributes 202 a, historicalshipping and RNs 202 b, and/or historical closet data 202 c, thewearability setup training module 204 may join feature vectors for pairsthat have been shipped (hereinafter referred to as shipped pairs) withRNs. For example, shipped pairs of garments may form a vector such as(UUID, SKU, shipped date), and this vector may be joined with featureshaving analytics (e.g., analytics from the advanced analytics tables, orany other user/SKU/apparel/closet level attributes retrieved from rawattributes 202 a, historical shipping and RNs 202 b, and/or historicalcloset data 202 c). As used herein, a feature may refer to any analyticsused in the model training environment 201, and an analytic may refer toany user/SKU/apparel/closet level attribute.

Then, these joined vectors may be downloaded into one or more data files(e.g., one or more csv files, or any other one or more types of datafiles capable of storing joined vectors), and the criteria for suchdownloading may be limited by conditions if there are preset conditions.For example, there may be a condition that only apparel shipped in thepast x days (e.g., 90 days) may be loaded into the csv files. With thedata set from the one or more csv files, the wearability setup trainingmodule 204 may then clean the data set, based on further conditions. Forexample, the wearability setup training module 204 may detect a presetcondition that data associated with historical feedback from users maybe used if the data has an RN count (e.g., number of RNs receivedregarding that apparel or that user) over 5, or any other presetthreshold value. In this example, any data with less than or equal tothe preset threshold value may be voided from the data set as part ofthe cleaning process.

After cleaning the data, the wearability setup training module 204 maythen transform the data set by running the data set into additionalfilters and conversions. For example, features having at least x % ofmissing data attributes (e.g., with x being a preset number such as, forexample, 50) may be removed from the data set. In addition, categoricalfeatures may be dummified. In the context of the current disclosure, theterm “dummified” may refer to one or more methods of expanding acategorical feature to multiple binary features. For example, acategorical feature named “gender” may have two possible values: maleand female. When the categorical feature “gender” is dummified, twocolumns may be generated: “is_male” and “is_female.” For data setsassociated with a user whose gender is male, the “is_male” may be set asTRUE while “is female” may be set as FALSE, and vice versa. In someinstances, this “dummifying” process may be referred to as “one-hotencoding.” Additionally, missing features may be imputed by, forexample, searching for the missing feature value from other places(e.g., BI component 116, product OLTP component 114, or any otherdatabase or internal storage accessible by wearability setup subsystem205), and/or filling the missing features with default, preset value. Insome embodiments, a preset value may be dynamically determined based ontraining data. For example, the preset value may be the average value ofa certain group of users with similar attributes (e.g., preset value ofa missing percentage worn for trial users may be the average ofhistorical percentage worn of trial users in the training dataset.Additionally, the features may also be normalized, by realigning oradjusting values based on a preset factor, removing outliers, and/orstandardizing the values in any way in accordance with preset rules orconditions. In some implementations, the wearability setup trainingmodule 204 may save the resulting training data set as modeling ETL(Extract, Transform, Load) objects in one or more target databases incommunication with wearability setup subsystem 205.

The wearability setup training module 204 may perform the trainingprocess for producing models, using the training data set. In someembodiments, the wearability setup training module 204 may use thetraining data set (e.g., by receiving the training data set and/orretrieving the training data set stored at designated files andlocations) for a neural network training process. As discussed above,the training process may be performed as an offline process, and assuch, may run fewer, independent cycles (e.g., 1-3 times a day asopposed to hourly) compared to the matching operations of the matchingenvironment 203. In each cycle of training, a neural network may betrained based on the training data set. As used herein, a neural networkmay be, for example, a deep learning neural network that has more layersthan traditional neural network. The wearability setup training module204 may train a neural network such that trained models, e.g.,wearability model 206, may be configured to output a metric for any pairof a unique user identifier and a unique apparel identifier (e.g., apredictive wearability metric indicative of propensity to wear, whichmay be a predicted wearability score based on a predictive modeling fromthe training or a default wearability score). In some embodiments, thewearability model 206 may comprise one or more of TTB modeling andprediction, garment utilization modeling and prediction, etc. Forexample, the output metric may be an average rate that a given garmentwas reported as worn (e.g., binary flag of worn vs. not worn inuser-provided RNs) by a given set of users (the user corresponding tothe UUID, or a set of users associated with that user based on userattributes). After a cycle of training a neural network, one or moretrained models resulting from the training may be stored as trainedmodel objects in one or more databases in communication with wearabilitysetup subsystem 205.

In some implementations, the wearability setup subsystem 205 may alsoevaluate the trained model objects, by executing or simulating thetrained model objects, e.g., wearability model 206, generated at thewearability setup training module 204, and assessing the objects. Forexample, the assessment may comprise predicting wearability metrics fortraining pairs, and calculating assessment metrics such as accuracy, AUC(Area Under the Curve), precision, recall, etc. The AUC may, forexample, be used in a classification analysis in order to determinewhich of the model objects best predicts classes.

The wearability setup prediction module 212 may collect and prepare datato generate predictive wearability metrics. In some embodiments, thewearability setup prediction module 212 may collect data as close toreal-time as possible. For example, if a user just closeted a newgarment and/or return notified (e.g., sent an RN for) a garment, thewearability setup prediction module 212 may capture data attributesassociated with all of those activities, because obtaining or missingone data attribute for a user may have an effect on the predictivewearability metrics produced by the wearability setup prediction module212. The active closet data may be received from BI component 116.Active data related to RNs may be received from, for example, thewearability setup training module 204. Additionally, the wearabilitysetup prediction module 212 may not only capture new closeting or RNdata relationships (e.g., UUID-SKU relationship), but also collect dataattributes related to the relationship (e.g., details regarding each SKUon attribute levels), from the BI component 116, the wearability setuptraining module 204, or any other databases in in communication with theenvironment 200.

In some embodiments, the wearability setup prediction module 212 maydefine the universe of the closeted pairs of unique user identifiers andunique apparel identifiers based on the collected data. The wearabilitysetup prediction module 212 may then join advanced features (e.g.,advanced analytics tables described with respect to processing modelingdata) for the closeted pairs. The closeted files may then be downloadedinto one or more csv files. With the data set from the one or more csvfiles, the wearability setup prediction module 212 may then clean thedata set, based on further conditions. For example, wearability setupprediction module 212 may detect a preset condition that data associatedwith historical feedback from users may be used only if the data has anRN count (e.g., number of RNs received regarding that apparel or thatuser) over 5, or any other preset threshold value. In this example, anydata with less than or equal to the preset threshold value may be voidedfrom the data set as part of the cleaning process.

After cleaning the data, the wearability setup prediction module 212 maythen transform the data set by running the data set into additionalfilters and conversions. For example, model ETL objects (saved by thewearability setup training module 204) may be loaded. In addition,categorical features may be dummified, as explained above. Additionally,missing features may be imputed by, for example, searching for themissing feature value from other places (e.g., BI component 116, productOLTP component 114, or any other database or internal storage accessibleby wearability setup subsystem 205), and/or filling the missing featureswith default, preset value. In some embodiments, a preset value may bedynamically determined based on training data. For example, the presetvalue may be the average value of a certain group of users with similarattributes (e.g., preset value of a missing percentage worn for trialusers may be the average of historical percentage worn of trial users inthe training dataset. Additionally, the features may also be normalized,by realigning or adjusting values based on a preset factor, removingoutliers, and/or standardizing the values in any way in accordance withpreset rules or conditions. As a result of these transformations, theprediction data may be prepared and become available for the module forthe wearability setup prediction module 212.

The wearability setup prediction module 212 may then run prediction onthe prediction data, by predicting one or more predictive wearabilitymetrics, e.g., raw wearability metrics, indicative of propensity towear. Such a prediction may occur by loading the stored one or moretrained model objects, executing the trained model objects with theprediction data, and generating predictive wearability metrics resultingfrom the execution of the training model objects. In someimplementations, the wearability setup prediction module 212 may alsopredict metrics or scores for training pairs (e.g., for purposes ofassessment or training associated with the prediction process). Thewearability setup prediction module 212 may then store the resultingpredictive wearability metrics in metrics database 120, as describedabove with respect to FIG. 1.

In some embodiments, the wearability setup prediction module 212 maycalculate squashed wearability metrics at least based on the resultingpredictive wearability metrics and a mapping for squashing 210 as willbe described in further detail below. In such embodiments, wearabilitysetup prediction module 212 may store the squashed wearability metricsin addition to the raw wearability metrics in the metrics database 120.

The wearability squashing setup module 208 may be configured to obtainpairs (e.g., UUID and SKU pairs) with RN and scores associated with theobtained pairs from the wearability setup training module 204 and/or thematching setup module 216. The wearability squashing setup module 208may then determine the mapping for squashing 210 based on the obtainedpairs with RN and associated scores, as will be described in furtherdetail with reference to FIGS. 3-4. The wearability squashing setupmodule 208 may provide the mapping for squashing 210 to the wearabilitysetup prediction module 212.

Referring back to the wearability setup prediction module 212 may squashthe raw wearability metrics, i.e., transform raw wearability metrics toestimated user satisfaction levels, at least based on the mapping forsquashing 210. In some embodiments, the wearability setup predictionmodule 212 may obtain estimated percentage worn by users, as describedin further detail below. In such embodiments, the wearability setupprediction module 212 may squash raw wearability metrics at least basedon the obtained estimated percentage worn by the users and the mappingfor squashing 210.

In the matching environment 203, match wearability metrics andcost-function outputs may be generated. Based on predictive wearabilitymetrics (e.g., the squashed wearability metrics 214 d and rawwearability metrics 214 c (also referred to as pre-squashed wearabilitymetrics 214 c)) output from the wearability setup prediction module 212,as well as real-time RIDs 214 a and real-time closet 214 b received fromthe product OLTP component 114 and/or the RID information repository124, the matching environment 203 may dynamically generate result file220 having match wearability metrics and cost-function outputs. Thisprocess may be performed by matching setup engine 216 and matchingengine 218, which have been described in detail with respect to FIG. 1above. For example, in some implementations, matching setup engine 216may correspond to the matching setup engine 126 of FIG. 1, and thematching engine 218 may correspond to the matching engine 130 of FIG. 1.

The number and arrangement of devices, networks, and modules shown inFIG. 2 are provided as an example. In practice, there may be additionaldevices and/or modules, fewer devices and/or modules, different devicesand/or modules, or differently arranged devices and/or modules thanthose shown in FIG. 2. Furthermore, two or more devices or modules shownin FIG. 2 may be implemented within a single device, or a single deviceshown in FIG. 2 may be implemented as multiple, distributed devices.Additionally, or alternatively, a device or a module of environment 200may perform one or more functions described as being performed byanother device or module of environment 200.

FIG. 3 depicts an exemplary method 300 of training a wearability modeland determining a mapping for squashing according to some embodiments.As shown in FIG. 3, the method 300 may begin with step 302 in whichcurrent and/or previous shipment data (hereinafter referred to asshipment data) (including matching setup, allocation result,replenishment, etc.) along with associated wearability scores may beobtained and the shipment data may be combined with the associatedwearability scores to form a data set. In some embodiments, the shipmentdata may include information associated with shipped garments within apredetermined period of time. For example, the shipment data may includeinformation associated with garments shipped within a month prior to acertain shipping date. In some embodiments, the shipment data mayinclude one or more user and apparel pairs with associated predictivewearability metrics (e.g., raw wearability metrics and squashedwearability metrics). In such embodiments, the user and apparel pairswith associated predictive wearability metrics may be retrieved from thematch setup file repository 128 in the match database 134. In someembodiments, the previous shipment data may be retrieved from thepublished data, e.g., information published by publisher 136. Forexample, the publisher 136 may publish wearability scores when wearableitems are in a fulfilling process. As another example, the matchingsetup module 216 may publish raw wearability scores associated with amatched user-garment pair. In such instances, the publisher 136 maypublish both the raw wearability scores and the squashed wearabilityscores associated with the matched user-garment pair when RIDs aregenerated.

In step 304, the obtained data may be cleaned up and transformed. Forexample, a preset condition may be detected where data associated withhistorical feedback from users may be used only if the data has an RNcount (e.g., number of RNs received regarding that apparel or that user)over 5, or any other preset threshold value. In some instances, the RNcount may be referred to as observations. In this example, any data withless than or equal to the preset threshold value may be voided from thedata set as part of the cleaning process. After cleaning the dataset,the dataset may be transformed by running the dataset into additionalfilters and conversions, as described above with reference to thewearability setup training module 204 of FIG. 2.

In step 306, the cleaned up and transformed data may be segmented basedon allocated wearability scores and user historic percentage worn. Asnoted above, garment quality for a particular garment may be measured bya user's wearability score associated with the particular garment. Eachuser may exhibit different sensitivity to the quality of a garment interms of wearing it. Users with similar historic percentage worn may,however, behave similarly with respect to change in the quality of thegarment. Accordingly, a probability of a user wearing a garment may bepredicted for any user based on a relation between a segment indicativeof the historic percentage worn and a segment indicative of an allocatedwearability score. Accordingly, segments of allocated wearability scoremay be determined based on the transformed data, thereby providingdiscrete points with respect to the wearability score to compute adifference, as described in further detail below with reference to step312.

In some embodiments, segments of historic percentage worn may includethe following exemplary ranges: (i) greater than 0% and less than orequal to 20%, (0.0, 0.2], (ii) greater than 20% and less than or equalto 40%, (0.2, 0.4], (iii) greater than 40% and less than or equal to50%, (0.4, 0.5], (iv) greater than 50% and less than or equal to 60%,(0.5, 0.6], (vi) greater than 60% and less than or equal to 70%, (0.6,0.7], (vii) greater than 70% and less than or equal to 80%, (0.7, 0.8],(viii) greater than 80% and less than or equal to 90%, (0.8, 0.9], and(ix) greater than 90% and less than or equal to 100%, (0.9, 1.0]. Insome embodiments, segments of allocated wearability score may includesimilar exemplary ranges. It is understood that the ranges for thesegmented historic percentage worn and the allocated wearability scoremay be adjusted as appropriate in alternative embodiments. Accordingly,a grid comprising rows of segmented ranges of historic percentage wornand columns of segmented ranges of allocated wearability scores may bedetermined. The grid may comprise a plurality of cells, each cellassociated with a specific allocated wearability score range and aspecific historic percentage worn range.

In step 308, the percentage worn may be calculated for every cell. Insome embodiments, the average wearability score and the historicpercentage worn may be determined for each cell. Accordingly, theaverage wearability score and the average historic percentage worn maybe indicative of the actual wearability score and historic percentagefor each cell. Table 1 below provides a portion of a grid correspondingto a user segment range of (0.6, 0.7], several wearability score segmentranges, average wearability scores for each cell (e.g., each cellcorresponds to a specific wearability score segment ranges and aspecific user segment range such as (0.0, 0.2] and (0.6, 0.7],respectively), average historic percentage worn for each cell, andnumber of observations for each cell. For ease of explanation and simplyfor the purpose of clarity, cell numbers have been included in Table 1.

TABLE 1 Average Average historic Wearability User Wearability percentagescore Number of Cell Segment Score worn segment Observations 1 (0.6,0.7] 0.16 36% (0.0, 0.2] 323 2 (0.6, 0.7] 0.34 43% (0.2, 0.4] 6,145 3(0.6, 0.7] 0.46 52% (0.4, 0.5] 10,591 4 (0.6, 0.7] 0.55 60% (0.5, 0.6]13,713 5 (0.6, 0.7] 0.64 67% (0.6, 0.7] 8,679 6 (0.6, 0.7] 0.73 72%(0.7, 0.8] 1,952 7 (0.6, 0.7] 0.84 71% (0.8, 0.9] 213 8 (0.6, 0.7] 0.9373% (0.9, 1.0] 22 9 (0.6, 0.7] N/A 64% N/A 540

In step 310, cells with less than a predetermined number of observationsmay be removed. For example, cells that include a number of data pointsthat fall below the predetermined number of observations, e.g., 50, maybe removed as shown below in Table 2 (the removed cell 8 is shown as aline strike through each corresponding column).

TABLE 2 Average Average historic Wearability User Wearability percentagescore Number of Cell Segment Score worn segment Observations 1 (0.6,0.7] 0.16 36% (0.0, 0.2]   323 2 (0.6, 0.7] 0.34 43% (0.2, 0.4] 6,145 3(0.6, 0.7] 0.46 52% (0.4, 0.5] 10,591  4 (0.6, 0.7] 0.55 60% (0.5, 0.6]13,713  5 (0.6, 0.7] 0.64 67% (0.6, 0.7] 8,679 6 (0.6, 0.7] 0.73 72%(0.7, 0.8] 1,952 7 (0.6, 0.7] 0.84 71% (0.8, 0.9]   213

 

 

 

   

9 (0.6, 0.7] N/A 64% N/A   540

In step 312, a difference metric for each user segment may bedetermined. In some embodiments, a difference metric between each usersegment of the grid may be determined based on the average wearabilityscore and the average historic percentage worn. In some embodiments, thedetermined difference metric may indicate an assumed percentage worn perscore change. For example, referring to Table 2, the difference metricbetween each user segment may be provided as shown below in Table 3.

TABLE 3 Historic percentage worn per wearability score change 0.42 0.710.87 0.76 0.55 0.00

As an exemplary illustration, the difference metric of 0.42 may beobtained by the following calculation based on the numbers obtained fromTable 2 above:

0.42=function of (0.43,0.36,0.34,0.16)=function of ((average historicpercentage worn of cell 2),(average historic percentage worn of cell1),(average wearability score of cell 2),(average wearability score ofcell 1)).

It is understood that the remaining difference metrics may be determinedsimilarly.

In some embodiments, the mapping for squashing 210 may include thedetermined difference metrics for each user segment as shown below inTable 4.

TABLE 4 User Average Wearability Average Historic Difference SegmentScore Percentage Worn metric (0.6, 0.7] 0.00 29% 0.42 (0.6, 0.7] 0.3443% 0.71 (0.6, 0.7] 0.46 52% 0.87 (0.6, 0.7] 0.55 60% 0.76 (0.6, 0.7]0.64 67% 0.55 (0.6, 0.7] 0.73 72% 0.00 (0.6, 0.7] N/A 64% —

In some embodiments, a beginning cell for the mapping for squashing 210may be extrapolated. For example, the beginning cell for may be based onthe average historic percentage worn for the first cell and the averagewearability score for the first cell. In some embodiments, thewearability setup prediction module 212 may utilize the mapping forsquashing 210 to transform raw wearability metrics into squashedwearability metrics, as described in further details below withreference to FIG. 4.

In step 314, a wearability training model may be generated further basedon the cleaned and transformed data in step 304. In some embodiments,the wearability model 206 trained by the wearability setup trainingmodule 204, as described above with reference to FIG. 2, may begenerated and/or updated based on the cleaned and transformed data instep 304. The generated wearability training model may be utilized bythe wearability setup prediction module 212 to generate one or morepredictive wearability metrics, e.g., raw wearability metrics, in someembodiments.

FIG. 4 depicts an exemplary method 400 of determining a squashed scoreaccording to some embodiments. As shown in FIG. 4, method 400 may beingwith step 402, in which shipment data may be obtained as described abovewith reference to the wearability setup training module 204 and thewearability squashing setup module 208 of FIG. 2 and step 302 of FIG. 3.

In step 404, the wearability model 206 may be used to generate apredictive wearability score, e.g., a raw wearability metric. In someembodiments, the wearability setup prediction module 212 may utilize thewearability model 206 to generate the predictive wearability score,e.g., raw wearability score. In step 406, the squashed wearabilitymetric may be computed based on the mapping for squashing 210. In someembodiments, the wearability setup prediction module 212 may utilize themapping for squashing 210 to transform raw wearability metrics intosquashed wearability metrics. In some embodiments, the squashed scoreassociated with a user and apparel pair may be based on which cell theuser and apparel pair belong to. For example, four user and apparelpairs (e.g., UUID-SKU pairs) may be obtained for squashing. As shown inTable 5 below, each user and apparel pair may be associated with a userhistoric percentage worn and a wearability score (also referred to as araw wearability metric or pre-squashed wearability score).

TABLE 5 User historic Pre-squashed UUID SKU percentage worn wearabilityscore U1 S1 0.62 0.35 U1 S2 0.62 0.65 U2 S3 0.68 0.82 U3 S1 0.63 N/A

The squashed wearability scores for each of the above noted user andapparel pairs may be determined based on the mapping for squashing 210.For example, the mapping for squashing 210 depicted above in Table 4 maybe utilized to determine the squash scores as shown in Table 6 below.

TABLE 6 User historic Pre-squashed Squashed UUID SKU percentage wornwearability score score U1 S1 0.62 0.35 0.44 U1 S2 0.62 0.65 0.68 U2 S30.68 0.82 0.72 U3 S1 0.63 N/A N/A

In some embodiments, the squashed scores may be determined byinterpolation based on the mapping for squashing 210. Specifically, thesquashed scores may be determined by using a row in the mapping forsquashing 210 associated with an average wearability score just lessthan the wearability score associated with the user and apparel pair.For example, the wearability score associated with U1-S1 is 0.35 asshown in Table 5. Accordingly, the wearability score just lower than0.35 included in the mapping for squashing 210 may be 0.34. As such, theinformation associated with the 0.34 wearability score (e.g., the rowincluding the 0.34 average wearability score, 43% average historicpercentage worn, and 0.71 difference metric) may be used to determinethe squashed score for U1-S1.

FIG. 5 depicts an exemplary method 500 of assigning wearable items in asubscription electronics transactions platform, according to exemplaryembodiments of the present disclosure. It is understood that the stepsdepicted in and described with reference to FIG. 5 may be performed inany order, e.g., in parallel. As shown in FIG. 5, in step 502, one ormore processors may generate a grid based on information regardinghistorically shipped wearable items. In some embodiments, the grid maycomprise at least a first cell and a second cell, wherein each cell mayinclude a portion of the information regarding historically shippedwearable items corresponding to: (i) a category of percentagesindicating how many wearable items have been used per number of wearableitems shipped, and (ii) a category of predictive wearability metrics forwearable items indicative of a propensity of a user to use the wearableitems. In some embodiments, the category regarding the percentages mayinclude a range of percentages, and the category regarding thepredictive wearability metrics may include a range of predictivewearability metrics.

In step 504, the one or more processors may determine an averagepercentage indicating how many wearable items have been used per numberof wearable items shipped for each cell. In step 506, the one or moreprocessors may determine an average predictive wearability metric forwearable items indicative of a propensity of a user to use the wearableitems for each. In step 508, the one or more processors may generate amapping configured to convert a predictive wearability metric to asquashed predictive wearability metric at least based on the averagepercentage and the average predictive wearability metric for each cell.In some embodiments, generating the mapping may include determining afirst difference metric indicating a difference in average percentageper difference in average predictive wearability metric between thefirst cell and the second cell, and the generated mapping may includethe first difference metric and the average percentage and wearabilitymetric for the first cell. In some embodiments, generating the mappingmay include determining, for the first cell, an extrapolated percentageindicating how many wearable items have been used per number of wearableitems shipped; and determining, for the first cell, an extrapolatedpredictive wearability metric.

In some embodiments, the grid may further comprise a third cell and thedetermined average predictive wearability metric for the first cell maybe lower than the determined average predictive wearability metric forthe second cell, and the determined average predictive wearabilitymetric for the second cell may be lower than the determined averagepredictive wearability metric for the third cell. In such embodiments,generating the mapping may further include (i) determining a seconddifference metric indicating a difference in average percentage perdifference in average predictive wearability metric between the secondcell and the third cell, and (ii) associating the second slop metricwith the second cell.

In some embodiments, method 500 may further include determining a numberof observations for each cell; comparing the determined number ofobservation for the first cell to a predetermined threshold; andremoving the first cell and the associated information regardinghistorically shipped wearable items from the grid as a result ofdetermining that the predetermined threshold exceeds the determinednumber of transactions for the first cell.

FIG. 6 depicts an exemplary method 600 of assigning wearable items in asubscription electronics transactions platform, according to exemplaryembodiments of the present disclosure. In some embodiments, method 600may be an extension of method 500 as described above with reference toFIG. 5. For example, step 602 of method 600 may follow step 510 ofmethod 500. It is understood, however, that the steps depicted in anddescribed with reference to FIGS. 5-6 may be performed in any order,e.g., in parallel.

In step 602, one or more processors may obtain information regarding afirst pairing including a first unique user identifier and a firstwearable item. In some embodiments, the information may include (i) afirst predictive wearability metric associated with the first uniqueuser identifier and the first wearable item, and (ii) a first percentageindicating how many wearable items have been used by the first user pernumber of wearable items shipped to the first user. In step 604, the oneor more processors may determine that the first predictive wearabilitymetric falls under the category of predictive wearability metrics forwearable items for the first cell. In step 606, the one or moreprocessors may determine that the first percentage falls under thecategory of percentages indicating how many wearable items have beenused per number of wearable items shipped for the first cell. In step608, the one or more processors may convert the first predictivewearability metric to a first squashed wearability metric based on thegenerated mapping. In some embodiments, converting the first predictivewearability metric to the first squashed wearability metric may includeobtaining the first difference metric and the average percentage andwearability metric for the first cell; and determining the firstsquashed wearability metric based on the first predictive wearabilitymetric, the first difference metric, and the average percentage andwearability metric for the first cell. In step 610, the one or moreprocessors may determine whether to assign the first wearable item tothe first unique user identifier based on the first squashed wearabilitymetric and/or the first predictive wearability metric.

In some embodiments, the first predictive wearability metric mayindicate a propensity of a first user associated with the first uniqueuser identifier to use the first wearable item.

As shown in FIG. 7, a device 700 used for performing the variousembodiments of the present disclosure may include a central processingunit (CPU) 720. CPU 720 may be any type of processor device including,for example, any type of special purpose or a general-purposemicroprocessor device. In some embodiments, any combination ofcomponents depicted in the environment 100 of FIG. 1 and/or in theenvironment 200 of FIG. 2 may correspond to device 700. As will beappreciated by persons skilled in the relevant art, CPU 720 also may bea single processor in a multi-core/multiprocessor system, such systemoperating alone, or in a cluster of computing devices operating in acluster or server farm. CPU 720 may be connected to a data communicationinfrastructure 710, for example, a bus, message queue, network, ormulti-core message-passing scheme.

A device 700 may also include a main memory 740, for example, randomaccess memory (RAM), and may also include a secondary memory 730. Insome embodiments, any combination of components depicted in theenvironment 100 of FIG. 1 and/or in the environment 200 of FIG. 2 maycorrespond to device 700. Secondary memory, e.g., a read-only memory(ROM), may be, for example, a hard disk drive or a removable storagedrive. Such a removable storage drive may comprise, for example, afloppy disk drive, a magnetic tape drive, an optical disk drive, a flashmemory, or the like. The removable storage drive in this example readsfrom and/or writes to a removable storage unit in a well-known manner.The removable storage unit may comprise a floppy disk, magnetic tape,optical disk, etc., which is read by and written to by the removablestorage drive. As will be appreciated by persons skilled in the relevantart, such a removable storage unit generally includes a computer usablestorage medium having stored therein computer software and/or data.

In alternative implementations, secondary memory 730 may include othersimilar means for allowing computer programs or other instructions to beloaded into device 700. Examples of such means may include a programcartridge and cartridge interface (such as that found in video gamedevices), a removable memory chip (such as an EPROM, or PROM) andassociated socket, and other removable storage units and interfaces,which allow software and data to be transferred from a removable storageunit to device 700.

A device 700 may also include a communications interface (“COM”) 760.Communications interface 760 allows software and data to be transferredbetween device 700 and external devices. Communications interface 760may include a modem, a network interface (such as an Ethernet card), acommunications port, a PCMCIA slot and card, or the like. Software anddata transferred via communications interface may be in the form ofsignals, which may be electronic, electromagnetic, optical, or othersignals capable of being received by communications interface 760. Thesesignals may be provided to communications interface 760 via acommunications path of device 700, which may be implemented using, forexample, wire or cable, fiber optics, a phone line, a cellular phonelink, an RF link or other communications channels.

The hardware elements, operating systems, and programming languages ofsuch equipment are conventional in nature, and it is presumed that thoseskilled in the art are adequately familiar therewith. A device 700 alsomay include input and output ports 750 to connect with input and outputdevices such as keyboards, mice, touchscreens, monitors, displays, etc.Of course, the various server functions may be implemented in adistributed fashion on a number of similar platforms, to distribute theprocessing load. Alternatively, the servers may be implemented byappropriate programming of one computer hardware platform.

The systems, apparatuses, devices, and methods disclosed herein aredescribed in detail by way of examples and with reference to thefigures. The examples discussed herein are examples only and areprovided to assist in the explanation of the apparatuses, devices,systems, and methods described herein. None of the features orcomponents shown in the drawings or discussed below should be taken asmandatory for any specific implementation of any of these theapparatuses, devices, systems, or methods unless specifically designatedas mandatory. For ease of reading and clarity, certain components,modules, or methods may be described solely in connection with aspecific figure. In this disclosure, any identification of specifictechniques, arrangements, etc. are either related to a specific examplepresented or are merely a general description of such a technique,arrangement, etc. Identifications of specific details or examples arenot intended to be, and should not be, construed as mandatory orlimiting unless specifically designated as such. Any failure tospecifically describe a combination or sub-combination of componentsshould not be understood as an indication that any combination orsub-combination is not possible. It will be appreciated thatmodifications to disclosed and described examples, arrangements,configurations, components, elements, apparatuses, devices, systems,methods, etc. can be made and may be desired for a specific application.Also, for any methods described, regardless of whether the method isdescribed in conjunction with a flow diagram, it should be understoodthat unless otherwise specified or required by context, any explicit orimplicit ordering of steps performed in the execution of a method doesnot imply that those steps must be performed in the order presented butinstead may be performed in a different order or in parallel.

Throughout this disclosure, references to components or modulesgenerally refer to items that logically can be grouped together toperform a function or group of related functions. Like referencenumerals are generally intended to refer to the same or similarcomponents. Components and modules can be implemented in software,hardware, or a combination of software and hardware. The term “software”is used expansively to include not only executable code, for examplemachine-executable or machine-interpretable instructions, but also datastructures, data stores and computing instructions stored in anysuitable electronic format, including firmware, and embedded software.The terms “information” and “data” are used expansively and includes awide variety of electronic information, including executable code;content such as text, video data, and audio data, among others; andvarious codes or flags. The terms “information,” “data,” and “content”are sometimes used interchangeably when permitted by context.

It is intended that the specification and examples be considered asexemplary only, with a true scope and spirit of the disclosure beingindicated by the following claims.

1-20. (canceled)
 21. A computer-implemented method for assigningwearable items in an electronic clothing transactions platform, themethod comprising: determining, by one or more processors, informationregarding historically shipped wearable items; utilizing, by the one ormore processors, a neural network trained based on information regardingthe historically shipped wearable items to determine an averagepercentage indicating how many wearable items have been used per numberof wearable items shipped; utilizing, by the one or more processors, thetrained neural network to determine an average predictive wearabilitymetric for wearable items indicative of a propensity of a user to usethe wearable items; obtaining, by the one or more processors,information regarding a first pairing including a first unique useridentifier and a first wearable item, wherein the information comprises:(i) a first predictive wearability metric associated with the firstunique user identifier and the first wearable item, and (ii) a firstpercentage indicating how many wearable items have been used by thefirst user per number of wearable items shipped to the first user;converting, by the one or more processors, the first predictivewearability metric to a first squashed wearability metric by comparingthe first predictive wearability metric to the average predictivewearability metric, and comparing the first percentage indicating howmany wearable items have been used by the first user per number ofwearable items shipped to the first user to the average percentageindicating how many wearable items have been used per number of wearableitems shipped; and determining, by the one or more processors, whetherto assign the first wearable item to the first unique user identifierbased on the first squashed wearability metric and/or the firstpredictive wearability metric.
 22. The method of claim 21, wherein thefirst predictive wearability metric indicates a propensity of a firstuser associated with the first unique user identifier to use the firstwearable item.
 23. The method of claim 21, wherein the informationregarding historically shipped wearable items includes (i) one or morecategories of percentages indicating how many wearable items have beenused per number of wearable items shipped, and (ii) one or morecategories of predictive wearability metrics for wearable itemsindicative of a propensity of a user to use the wearable items.
 24. Themethod of claim 23, wherein each of the categories regarding thepercentages comprises a range of percentages, and wherein each of thecategories regarding the predictive wearability metrics comprises arange of predictive wearability metrics.
 25. The method of claim 21,further comprising: determining an extrapolated percentage indicatinghow many wearable items have been used per number of wearable itemsshipped; and determining an extrapolated predictive wearability metric.26. The method of claim 23, further comprising: determining that thefirst predictive wearability metric falls under a category of predictivewearability metrics.
 27. The method of claim 23, further comprising:determining that the first percentage falls under a category ofpercentages indicating how many wearable items have been used per numberof wearable items shipped.
 28. A computer system for assigning wearableitems in an electronic clothing transactions platform, the computersystem comprising: a data storage device storing processor-readableinstructions; and a processor configured to execute the instructions toperform a method including: determining information regardinghistorically shipped wearable items; utilizing a neural network trainedbased on information regarding the historically shipped wearable itemsto determine an average percentage indicating how many wearable itemshave been used per number of wearable items shipped; utilizing thetrained neural network to determine an average predictive wearabilitymetric for wearable items indicative of a propensity of a user to usethe wearable items; obtaining information regarding a first pairingincluding a first unique user identifier and a first wearable item,wherein the information comprises: (i) a first predictive wearabilitymetric associated with the first unique user identifier and the firstwearable item, and (ii) a first percentage indicating how many wearableitems have been used by the first user per number of wearable itemsshipped to the first user; converting the first predictive wearabilitymetric to a first squashed wearability metric by comparing the firstpredictive wearability metric to the average predictive wearabilitymetric, and comparing the first percentage indicating how many wearableitems have been used by the first user per number of wearable itemsshipped to the first user to the average percentage indicating how manywearable items have been used per number of wearable items shipped; anddetermining whether to assign the first wearable item to the firstunique user identifier based on the first squashed wearability metricand/or the first predictive wearability metric.
 29. The computer systemof claim 28, wherein the first predictive wearability metric indicates apropensity of a first user associated with the first unique useridentifier to use the first wearable item.
 30. The computer system ofclaim 28, wherein the information regarding historically shippedwearable items includes (i) one or more categories of percentagesindicating how many wearable items have been used per number of wearableitems shipped, and (ii) one or more categories of predictive wearabilitymetrics for wearable items indicative of a propensity of a user to usethe wearable items.
 31. The computer system of claim 30, wherein each ofthe categories regarding the percentages comprises a range ofpercentages, and wherein each of the categories regarding the predictivewearability metrics comprises a range of predictive wearability metrics.32. The computer system of claim 28, the method further comprising:determining an extrapolated percentage indicating how many wearableitems have been used per number of wearable items shipped; anddetermining an extrapolated predictive wearability metric.
 33. Thecomputer system of claim 30, the method further comprising: determiningthat the first predictive wearability metric falls under a category ofpredictive wearability metrics.
 34. The computer system of claim 30, themethod further comprising: determining that the first percentage fallsunder a category of percentages indicating how many wearable items havebeen used per number of wearable items shipped.
 35. A non-transitorycomputer-readable medium containing instructions that, when executed bya processor, cause the processor to perform a method comprising:determining information regarding historically shipped wearable items;utilizing a neural network trained based on information regarding thehistorically shipped wearable items to determine an average percentageindicating how many wearable items have been used per number of wearableitems shipped; utilizing the trained neural network to determine anaverage predictive wearability metric for wearable items indicative of apropensity of a user to use the wearable items; obtaining informationregarding a first pairing including a first unique user identifier and afirst wearable item, wherein the information comprises: (i) a firstpredictive wearability metric associated with the first unique useridentifier and the first wearable item, and (ii) a first percentageindicating how many wearable items have been used by the first user pernumber of wearable items shipped to the first user; converting the firstpredictive wearability metric to a first squashed wearability metric bycomparing the first predictive wearability metric to the averagepredictive wearability metric, and comparing the first percentageindicating how many wearable items have been used by the first user pernumber of wearable items shipped to the first user to the averagepercentage indicating how many wearable items have been used per numberof wearable items shipped; and determining whether to assign the firstwearable item to the first unique user identifier based on the firstsquashed wearability metric and/or the first predictive wearabilitymetric.
 36. The non-transitory computer-readable medium of claim 35,wherein the first predictive wearability metric indicates a propensityof a first user associated with the first unique user identifier to usethe first wearable item.
 37. The non-transitory computer-readable mediumof claim 35, wherein the information regarding historically shippedwearable items includes (i) one or more categories of percentagesindicating how many wearable items have been used per number of wearableitems shipped, and (ii) one or more categories of predictive wearabilitymetrics for wearable items indicative of a propensity of a user to usethe wearable items.
 38. The non-transitory computer-readable medium ofclaim 37, wherein each of the categories regarding the percentagescomprises a range of percentages, and wherein each of the categoriesregarding the predictive wearability metrics comprises a range ofpredictive wearability metrics.
 39. The non-transitory computer-readablemedium of claim 35, the method further comprising: determining anextrapolated percentage indicating how many wearable items have beenused per number of wearable items shipped; and determining anextrapolated predictive wearability metric.
 40. The non-transitorycomputer-readable medium of claim 37, the method further comprising:determining that the first predictive wearability metric falls under acategory of predictive wearability metrics; and determining that thefirst percentage falls under a category of percentages indicating howmany wearable items have been used per number of wearable items shipped.